The present invention relates to a pole-zero analyzer and, more particularly, to a pole-zero analyzer for extracting pole-zero parameter values which approximate a spectrum of a signal such as a speech signal.
In the field of speech synthesis or speech recognition, it is important to extract parameter values which approximate a spectrum of speech. In addition, for a general signal, it is sometimes necessary to extract parameter values which approximate a spectrum of the signal.
As parameters which approximate a spectrum of a signal such as a speech signal (to be referred to simply as speech or the like hereinafter), pole or pole-zero is often used. This is because the pole or zero has a clear physical meaning and hence is advantageous in actual applications.
Conventionally, as a scheme of extracting pole parameter values which approximate a spectrum of speech or the like, a scheme is known in which an algebraic equation of higher order having linear prediction coefficients as coefficients is solved by a successive approximation such as a Newton-Raphson method. This first conventional example is described by J. D. Markel and A. H. Gray in the literature "Linear Prediction of Speech", chapter 7.
A second example of extracting pole parameter values, a scheme of performing inverse filtering in an autocorrelation region is described by Fushikida in an article "Formant Multistage Prediction Method Using Inverse Filtering in Autocorrelation" (Reference S81-41 of Speech Research of the Acoustical Society of Japan). In this second conventional example, when coefficients of a second-order pole circuit at the kth stage are .alpha..sub.k,1 and .alpha..sub.k,2 and an autocorrelation value of an input is r.sub.k-1,i, an autocorrelation value of an output r.sub.k,i is obtained by the following equation (1): ##EQU1##
An autocorrelation of speech or the like is used as an input at the first stage and an output thereof is used as an input at the next stage, and autocorrelation values of outputs are successively obtained by the equation (1), thereby obtaining an autocorrelation value r.sub.k,0 of an output of the final stage (Kth stage). This is a scheme called inverse filtering in an autocorrelation region. Note that r.sub.k,0 is called the power of a predicted residual difference or error power, and 0th- to 2Kth-order autocorrelation values r.sub.0,i of input speech are required to calculate this.
A table of pole parameter values is prepared beforehand, and then coefficients .alpha..sub.k,1, .alpha..sub.k,2 at the respective stages are obtained to calculate the above-mentioned r.sub.k,0. A value which gives a minimum r.sub.k,0 among various candidates of pole parameter values is output as a pole parameter value which gives an optimal approximation.
On the other hand, an example (third example) of a scheme of extracting pole-zero parameter values is the one described by C. T. Mullis and R. A. Roverts in an article "The Use of Second-Order Information in the Approximation of Discrete-Time Linear Systems", printed in IEEE Transaction, ASSP - 24, No. 3, pp. 226 to 238.
This scheme approximates a spectral envelope H (e.sup.j.omega.) by a pole-zero representation having a transfer function represented by the following equation (2): ##EQU2## where a.sub.0 =1, n is the order of a denominator polynomial, i.e., the order of a pole circuit, and m is the order of a numerator polynomial, i.e., the order of a zero circuit.
This scheme is based on a principle in that a.sub.i and q.sub.k which minimize a value of the following equation (3) give an optimal approximation: ##EQU3## where r.sub..vertline.i-l.vertline. is an autocorrelation value of an input signal of speech or the like and h.sub.i is an impulse response relating thereto.
At this time, an optimal parameter a.sub.i is obtained by solving the following simultaneous equations (4): ##EQU4##
An optimal parameter q.sub.k is given by the following equation (6) using a solution a.sub.i of the equation (4): ##EQU5## An autocorrelation value r.sub..vertline.i-l.vertline. and an impulse response value h.sub.i can be easily obtained by a linear prediction method of higher orders than n or m, i.e., the first conventional scheme. In this case, not a root of the algebraic equation of higher order but a parameter h.sub.i need only be obtained.
In the third conventional example, coefficients a.sub.i and q.sub.k of denominator and numerator polynomials of the transfer function can be obtained. In order to obtain the pole-zero parameter value from this, a root of the algebraic equation of higher order (nth- or mth-order) must be obtained similar to the first conventional example.
In the above conventional examples, the first example, i.e., the one which solves the algebraic equation of higher order having linear prediction coefficients as coefficients has problems in that a large volume of calculations are required during solution of the algebraic equation of higher order or that it is difficult to stably obtain a frequency or a band width of the pole.
In the second example, although parameter values can be stably obtained since an optimal value is extracted beforehand from candidates expected to be suitable for pole parameters representing a spectrum of speech or the like, many calculations are required.
Furthermore, only pole parameter values can be obtained in the above two conventional examples. Therefore, depending on a shape of the spectrum of speech or the like, the parameter value of relatively low order cannot be the one which gives an optimal approximation. On the contrary, the parameter of higher order must be obtained in that case, resulting in a very large volume of calculations.
In the third conventional example, i.e., the one by Mullis and Roberts, the parameter value of relatively low order can be the one which gives the optimal approximation since the pole and zero parameters can be obtained. However, similar to the first example, the algebraic equation of higher order must be solved in the third example, and hence the same problem as that in the first example is posed. In this case, the number of zeros is small and hence is not a problem, but the order of poles is a problem because poles of 10th or higher orders are necessary.